package com.ssy.lingxi.member.merchant.model.vo.lifecycle.request;

import com.ssy.lingxi.member.merchant.api.handler.annotation.DateTimeStringFormatAnnotation;
import com.ssy.lingxi.member.merchant.model.vo.basic.request.FileUploadVO;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.List;

/**
 * 会员投诉与建议处理VO
 * @author yzc
 * @version 2.0.0
 * @date 2021/5/17
 */
public class MemberComplaintHandleVO implements Serializable {
    private static final long serialVersionUID = -6821550268402993584L;

    /**
     * 主键id
     */
    private Long id;

    /**
     * 处理人用户id
     */
    private Long handleUserId;

    /**
     * 处理人用户编辑名称
     */
    private String handleUserEditName;

    /**
     * 处理人用户编辑手机
     */
    private String handleUserEditPhone;

    /**
     * 处理结果
     */
    @NotBlank(message = "处理结果不能为空")
    private String handleResult;

    /**
     * 处理时间，格式为yyyy-MM-dd HH:mm:ss
     */
    @DateTimeStringFormatAnnotation(message = "事件时间不能为空")
    private String handleTime;

    /**
     * 处理附件
     */
    @Valid
    private List<FileUploadVO> handleAttachments;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getHandleUserId() {
        return handleUserId;
    }

    public void setHandleUserId(Long handleUserId) {
        this.handleUserId = handleUserId;
    }

    public String getHandleUserEditName() {
        return handleUserEditName;
    }

    public void setHandleUserEditName(String handleUserEditName) {
        this.handleUserEditName = handleUserEditName;
    }

    public String getHandleUserEditPhone() {
        return handleUserEditPhone;
    }

    public void setHandleUserEditPhone(String handleUserEditPhone) {
        this.handleUserEditPhone = handleUserEditPhone;
    }

    public String getHandleResult() {
        return handleResult;
    }

    public void setHandleResult(String handleResult) {
        this.handleResult = handleResult;
    }

    public String getHandleTime() {
        return handleTime;
    }

    public void setHandleTime(String handleTime) {
        this.handleTime = handleTime;
    }

    public List<FileUploadVO> getHandleAttachments() {
        return handleAttachments;
    }

    public void setHandleAttachments(List<FileUploadVO> handleAttachments) {
        this.handleAttachments = handleAttachments;
    }
}
